# Q. What is this file?
# A. This file contains options which allow you to configure your multiworld experience while allowing
#    others to play how they want as well.
#
# Q. How do I use it?
# A. The options in this file are weighted. This means the higher number you assign to a value, the
#    more chances you have for that option to be chosen. For example, an option like this:
#
#    map_shuffle:
#      on: 5
#      off: 15
#
#    Means you have 5 chances for map shuffle to occur, and 15 chances for map shuffle to be turned
#    off.
#
# Q. I've never seen a file like this before. What characters am I allowed to use?
# A. This is a .yaml file. You are allowed to use most characters.
#    To test if your yaml is valid or not, you can use this website:
#        http://www.yamllint.com/
#    You can also verify that your Archipelago options are valid at this site:
#        https://archipelago.gg/check

# Your name in-game, limited to 16 characters.
#     {player} will be replaced with the player's slot number.
#     {PLAYER} will be replaced with the player's slot number, if that slot number is greater than 1.
#     {number} will be replaced with the counter value of the name.
#     {NUMBER} will be replaced with the counter value of the name, if the counter value is greater than 1.
name: Player{number}

# Used to describe your yaml. Useful if you have multiple files.
description: Default ARK Survival Evolved Template

game: ARK Survival Evolved
requires:
  version: 0.6.7 # Version of Archipelago required for this yaml to work as expected.
  game:
    ARK Survival Evolved: 1.0.0 # Version of the world required for this yaml to work as expected.

ARK Survival Evolved:
  ################
  # Game Options #
  ################
  progression_balancing:
    # A system that can move progression earlier, to try and prevent the player from getting stuck and bored early.
    # 
    # A lower setting means more getting stuck. A higher setting means less getting stuck.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 99
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-99: 0 # random value between 0 and 99
    disabled: 0 # equivalent to 0
    normal: 50 # equivalent to 50
    extreme: 0 # equivalent to 99

  accessibility:
    # Set rules for reachability of your items/locations.
    # 
    # **Full:** ensure everything can be reached and acquired.
    # 
    # **Minimal:** ensure what is needed to reach your goal can be acquired.
    full: 50
    minimal: 0

  maps:
    # Which ARK map(s) your server runs. Any supported map can be played ON ITS OWN - you are
    # never forced to pair maps.
    # 
    # List more than one for a CLUSTER (maps linked by obelisk/transmitter travel under a single AP
    # slot), which pools all their content together:
    #     maps:
    #       - the_island
    #       - scorched_earth
    # 
    # Anything not listed is filtered out, so a check you cannot reach never appears - and the goal
    # only ever asks for bosses your maps actually have.
    # 
    # Smaller maps have fewer locations than the Island but receive the same craftable-everywhere
    # engrams, so engram grouping is raised automatically when a slot needs it (as if you had set
    # engrams_per_item yourself). Supported today: the_island, scorched_earth, ragnarok.
    ['the_island']

  goal:
    # Which bosses you must defeat to win (any difficulty - Gamma, Beta, or Alpha).
    # 
    # The first four are cumulative over THE ISLAND's bosses, and mean the same thing whatever maps
    # you run:
    #   broodmother                     - defeat the Broodmother
    #   broodmother_megapithecus        - + Megapithecus
    #   broodmother_megapithecus_dragon - + Dragon
    #   all_bosses                      - + Overseer (all four)
    # 
    # The last one scales with your maps instead:
    #   all_bosses_all_maps             - every boss on the maps you enabled
    # 
    # On an Island-only slot that final option is identical to all_bosses. Add Scorched Earth and it
    # also wants the Manticore; Ragnarok's arena is the Dragon and Manticore together, so it counts
    # for both.
    # 
    # A boss on a map you are not running is never required - it could not be reached. On a map
    # without the Island's four, the cumulative options simply mean that map's own bosses, so
    # Scorched Earth alone is a Manticore run.
    broodmother: 0
    broodmother_megapithecus: 0
    broodmother_megapithecus_dragon: 0
    all_bosses: 50
    all_bosses_all_maps: 0

  death_link:
    # When you die, everyone who enabled death link dies. Of course, the reverse is true too.
    'false': 50
    'true': 0

  lock_taming:
    # Lock dino taming behind an Archipelago item.
    'false': 0
    'true': 50

  lock_supply_crates:
    # Lock supply crate (care package) access behind an Archipelago item.
    'false': 0
    'true': 50

  bundle_saddles:
    # Bundle each rideable dino's saddle with its tame unlock. When on, unlocking
    # 'Tame: X' also grants X's saddle engram, and those saddle engrams are removed
    # from the item pool (the freed slots become filler). Off = saddles are separate items.
    'false': 50
    'true': 0

  free_starter_engrams:
    # Early-help option: grant the basic starter engrams (campfire, cloth armor, spear,
    # thatch building, storage, etc.) for FREE at the start, and remove them from the item
    # pool so no one finds them in the multiworld. The set is engrams.json 'starter_engrams'.
    'false': 50
    'true': 0

  trap_percentage:
    # Of the filler items, what percent are traps (e.g. spawning wild dinos near you)
    # vs neutral 'Bonus Resources'. 0 = no traps. Only affects filler slots, not real items.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    25: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  early_dino_checks:
    # Cross-game starter help / lockout prevention. When on, the ONLY sphere-1 (start-reachable)
    # ARK checks are the 8 weak early-dino first-kills (Dodo, Parasaur, Trike, Dilo, Phiomia,
    # Lystrosaurus, Compy, Dimorphodon, marked PRIORITY) plus low levels (Reach Level 5-40). A
    # global-early item (e.g. Dark Souls III 'early_banner: early_global') can therefore only land
    # there -> no player gets locked out. Explorer notes still hold later progression but are moved to
    # a sphere-2 region gated behind receiving any early-dino tame, so they never catch the early item;
    # every other slow/late check (other kills, tames, Reach Level 45+, bosses) is EXCLUDED to filler.
    # Keep dossier_checks at/above default.
    'false': 50
    'true': 0

  progression_tiers:
    # Tech-tree progression (RECOMMENDED - default ON). Splits every check into 4 tier REGIONS you
    # open in order: Menu -> Tier 0 -> Tier 1 -> Tier 2 -> Tier 3, each unlocked by receiving the prior
    # tier's crafting-station engram(s). This is what gives the seed a real sphere-by-sphere climb;
    # with it OFF almost everything is reachable from the start and the playthrough collapses into one
    # or two spheres.
    #   Tier 0 (start): weak dinos, Reach Level <= 40
    #   Tier 1: opens on Engram: Forge + Engram: Mortar And Pestle - mid dinos, Level 45-80
    #   Tier 2: opens on Engram: Anvil Bench (the Smithy - it costs metal ingots, so it needs the
    #           Forge first) - strong/water dinos, Level 85-120; explorer NOTES open here
    #   Tier 3: opens on Engram: Fabricator - apex/deep-ocean dinos, bosses, Level 125-150
    # The gate engrams are ordinary pool items classified PROGRESSION, so the fill guarantees each is
    # reachable before its tier opens (no hard-placement, no waiting on another player). Explorer notes
    # sit behind Tier 2 (two gates deep), so ARK's sphere-0 set is just Tier 0 kills + low levels -
    # another game's early-forced item can only land there. Supersedes early_dino_checks. The
    # tame/kill/cave access rules still apply ON TOP, within each tier.
    'false': 0
    'true': 50

  station_placement:
    # How the 3 tier-gate station engrams (Refining Forge, Smithy/Anvil Bench, Fabricator) are
    # placed when progression_tiers is on:
    #   tiered       - (default) hard-placed on YOUR OWN active checks, staggered by tier: Forge in
    #                  Tier 0, Smithy in Tier 1, Fabricator in Tier 2. The classic staged ARK climb.
    #   local_early  - forced into an early sphere of YOUR world (like DS3 'early_local'). All three
    #                  surface quickly on your own early checks, so tiers open sooner.
    #   global_early - forced into an early sphere ANYWHERE in the multiworld (like DS3 'early_global').
    #                  A friend may find your stations for you. Only meaningful in a multiworld.
    # Ignored when progression_tiers is off.
    tiered: 50
    local_early: 0
    global_early: 0

  extra_early_items:
    # Force specific items early, the same way station_placement handles the tier gates. List exact
    # item names (engrams like "Engram: Bow", or tames like "Tame: Rex"), quoted:
    #     extra_early_items:
    #       - "Engram: Bow"
    #       - "Tame: Raptor"
    # Routing follows station_placement: global_early -> forced early ANYWHERE in the multiworld;
    # anything else (local_early / tiered) -> forced early in YOUR world. Works with or without
    # progression_tiers. Names that aren't real items are ignored.
    []

  tier0_add:
    # (progression_tiers only) Creatures to FORCE into Tier 0. Their kill + tame checks become
    # sphere-0, so they join the pool that can host the T0 station gates. Use exact creature names,
    # quoted, e.g.:
    #     tier0_add:
    #       - Carno
    #       - Sabertooth
    # Names that don't match a creature are ignored.
    []

  tier0_remove:
    # (progression_tiers only) Creatures to REMOVE from Tier 0 (bumped to Tier 1), so their kills
    # are no longer sphere-0 / eligible to host the T0 station gates. Only affects creatures that are
    # Tier 0 by default. Use exact creature names, quoted.
    []

  dossier_checks:
    # How many explorer-note locations to include as checks.
    # 
    # Counted per SLOT, from the notes your maps actually have - the Island has 232, Scorched Earth
    # adds 137, and a value above your total harmlessly caps there. Ragnarok has none of its own.
    # Keep near the maximum unless you know what you're doing: ARK's big pool needs most of the notes
    # plus the other locations to fit, and generation fails if too low.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 400
    400: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-400: 0 # random value between 0 and 400

  food_sanity:
    # Percent of the food 'hold N in inventory' checks (Citronal, Cooked Meat, Jerky, Honey,
    # Rare Flower, etc - 14 total) included as locations. Which ones are picked is random per seed.
    # 0 = no food checks.
    '0': 0
    '25': 0
    '50': 0
    '75': 0
    '100': 50

  tame_sanity:
    # Percent of the per-species 'Tamed: X' checks included as locations - lower = fewer tames
    # REQUIRED to finish. Which species are picked is random per seed. Every 'Tame: X' unlock item
    # stays in the pool regardless, so everything remains tameable (with lock_taming).
    # NOTE: low values remove many locations; if generation errors about item count, raise this,
    # or turn on bundle_structures / bundle_saddles to shrink the item pool to match.
    '25': 0
    '50': 0
    '75': 0
    '100': 50

  death_sanity:
    # Percent of the cause-of-death checks included as locations - the 10 'Die to a carnivore /
    # to cold / to drowning / from fall damage / to starvation ...' checks. Which ones are picked is
    # random per seed. 0 = no death checks at all, for anyone who would rather not be nudged into
    # dying on purpose.
    # 
    # Note these checks CAN hold progression - every cause is reachable (you can always starve or
    # drown), so nothing gets stranded, but it does mean a seed may want you to die deliberately. Set
    # this to 0 if that is not for you.
    '0': 0
    '25': 0
    '50': 0
    '75': 0
    '100': 50

  death_milestones:
    # Include the cumulative death-count milestones (die once, 5, 10, 25, 40 times).
    # 
    # Separate from death_sanity because they are a different kind of ask: the cause-of-death checks
    # are things that happen while you play, whereas the count milestones reward dying repeatedly.
    # Turning this off leaves the individual death checks alone.
    'false': 0
    'true': 50

  bundle_structures:
    # Bundle building-structure engrams by material: ALL Wood structures unlock from one
    # 'Bundle: Wood Structures' item (same for Stone, Metal, Greenhouse). Tools/weapons like the
    # Metal Pick stay individual. Shrinks the item pool by ~100 items (backfilled with filler).
    'false': 50
    'true': 0

  engrams_per_item:
    # Group engram unlocks so one AP item unlocks SEVERAL engrams at once.
    # 1 = off (one item = one engram, the classic behavior)
    # 2-4 = fold engrams into groups of that size, in PROGRESSION order (early engrams grouped
    #       with early, late with late), so the pool carries far fewer engram items (the freed
    #       slots become filler). The tame-logic access rules follow automatically, and the plugin
    #       unlocks every engram in a received group. Handy for shrinking a huge engram pool so it
    #       fits the location count. Structure-bundled / starter / auto-granted engrams are never
    #       grouped (they're already handled).
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 1
    # Maximum value is 4
    1: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-1-4: 0 # random value between 1 and 4

  tames_per_item:
    # Group taming unlocks so one AP item unlocks SEVERAL 'Tame: X' at once.
    # 1 = off
    # 2-4 = fold tames into groups of that size WITHIN each progression tier (never mixing an
    #       early creature with an endgame one), so receiving one item unlocks the ability to tame
    #       several species. Shrinks the item pool; with lock_taming the group item gates every
    #       species it covers. 'Tame N Species' milestones become filler-only when this is above 1
    #       (you still tame the species in-game; they just stop hosting progression).
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 1
    # Maximum value is 4
    1: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-1-4: 0 # random value between 1 and 4

  randomize_dino_spawns:
    # FULLY randomize which species live in which biome: every species is dealt across the
    # map's spawn zones, and each biome's spawn roster is completely REPLACED by its seeded hand
    # (via Game.ini spawn-container overrides the connector writes; one server start applies).
    # Every species is guaranteed to spawn SOMEWHERE, so all checks stay obtainable.
    #   off     - normal spawns
    #   grouped - land+air species dealt across land biomes, water species across water zones,
    #             with predators down-weighted (apex rare, mid uncommon) so zones stay livable
    #   chaos   - everything dealt across everything at EQUAL weight (beached mosas, ocean rexes,
    #             predator-saturated beaches... the full experience)
    # Bosses, alphas, tek variants, cave interiors, and specialty spawners (Giga, Quetz, beaver
    # dams...) are never touched.
    'off': 50
    grouped: 0
    chaos: 0

  mod_ids:
    # Steam Workshop mod IDs to include. Their engrams become AP items. ONLY the mods below are
    # supported (an unknown ID is a generation error - the apworld can't know an arbitrary mod's
    # engrams). Supported:
    #     731604991 / 1999447172  Structures Plus / Super Structures  (building - needs bundle_structures: true)
    #     1565015734              Kraken's Better Dinos
    #     821530042               Upgrade Station
    #     2594067220              Super Spyglass Plus
    #     1609138312              Dino Storage v2
    #     889745138               Awesome Teleporters
    #     1631378184              Explorer Note Tracker
    #     1404697612              Awesome SpyGlass
    #     1967741708              Lethal's Reusables
    # Structures Plus and Super Structures are forks of one mod - list whichever you run, not both.
    # Accepts a yaml list OR a comma-separated string, quotes optional:
    #     mod_ids: 731604991, 1631378184, 2594067220, 821530042, 1609138312, 1565015734, 1404697612, 889745138
    #     mod_ids: [1609138312, 889745138]
    []

  ###########################
  # Item & Location Options #
  ###########################
  local_items:
    # Forces these items to be in their native world.
    []

  non_local_items:
    # Forces these items to be outside their native world.
    []

  start_inventory:
    # Start with the specified amount of these items. Example: "Bomb: 1"
    {}

  start_inventory_from_pool:
    # Start with the specified amount of these items and don't place them in the world. Example: "Bomb: 1"
    # 
    # The game decides what the replacement items will be.
    {}

  start_hints:
    # Start with these item's locations prefilled into the ``!hint`` command.
    []

  start_location_hints:
    # Start with these locations and their item prefilled into the ``!hint`` command.
    []

  exclude_locations:
    # Prevent these locations from having an important item.
    []

  priority_locations:
    # Prevent these locations from having an unimportant item.
    []

  item_links:
    # Share part of your item pool with other players.
    []

  plando_items:
    # Generic items plando.
    []
